Data compression is a process that transforms an input data set into a different data set that contains the same information as the input data set and is smaller in size than the input data set. Electronic systems apply data compression to reduce the amount of storage required to store a data set or the amount of time required to transmit a data set in considering compression performance, a compression ratio is defined as the ratio of the size of the input data set to the size of the compressed data set. The larger the compression ratio, the greater the savings in storage or time provided by the compression. By decreasing the required memory for data storage or the time required for data transmission, compression can provide an economic advantage. If physical devices such as semiconductor memory, magnetic disks, optical storage devices, or other storage technologies are utilized to store datasets, then a smaller space is required on the device for storing the compressed data thereby utilizing fewer devices. Similarly, if transmission media having limited bandwidth are utilized for transmitting a data set, then compressing data prior to transmission can result in an improvement in efficiency of utilization of the transmission media. Data compression can be particularly effective if the input data set contains redundancy, such as having symbols or strings of symbols that appear with high frequency.